Priority Queues: Small, Monotone and Trans-dichotomous
نویسنده
چکیده
We consider two data-structuring problems which involve performing priority queue (pq) operations on a set of integers in the range 0 . . 2 − 1 on a unit-cost RAM with word size w bits. A monotone min-PQ has the property that the minimum value stored in the pq is a non-decreasing function of time. We give a monotone minpq that, starting with an empty set, processes a sequence of n insert and delete-mins and m decrease-keys in O(m + n √ log n log log n) time. As a consequence, the single-source shortest paths problem on graphs with n nodes and m edges and integer edge costs in the range 0 . . 2 − 1 can be solved in O(m + n √ log n log log n) time, and n integers each in the range 0 . . 2 −1 can be sorted in O(n √ log n log log n) time. All the above results require linear space and assume that any unit-time RAM instructions used belong to the the class ac. A small (generalized) PQ supports insert, delete and search operations (the latter returning the predecessor of its argument among the keys in the pq), but allows only w keys to be present in the pq at any time. We give a small pq which supports all operations in constant expected time. As a consequence, we get that insert, delete and search operations on a set of n keys can be performed in O(1+log n/ logw) expected time. Derandomizing this small pq gives a linear-space static deterministic small pq.
منابع مشابه
Computational evaluation of hot queues
The heap-on-top (hot) priority queue data structure 6] improves on the best known times for Dijkstra's shortest path algorithm. It also has very good practical performance and is robust over a wide range of graph types. The heart of Dijkstra's algorithm is a monotone priority queue, that is, a priority queue where no element on the queue ever becomes smaller than the most recently extracted ele...
متن کاملOn packet marking at priority queues
This note concerns charging, rate control and routing for a communication network using priority mechanisms at queues. It is argued that by appropriately marking packets at overloaded resources, end-systems can be provided with the information necessary to balance load across different routes and priorities. Keywords—Congestion pricing, differentiated services, priority queues, rate control, ro...
متن کاملMODELLING AND ANALYSIS OF A DISCRETE-TIME PRIORITY QUEUING COMPUTER NETWORK WITH PRIORITY JUMPS USING PROBABILITY GENERATING FUNCTIONS
Priority queues have a great importance in the study of computer communication networks in which different types of traffic require different quality of service standards. The discrete-time non-preemptive priority queuing model with priority jumps is proposed in this paper. On the basis of probability generating functions mean system contents and mean queuing delay characteristics are obtained....
متن کاملFinger Trees
We implement and prove correct 2-3 finger trees. Finger trees are a general purpose data structure, that can be used to efficiently implement other data structures, such as priority queues. Intuitively, a finger tree is an annotated sequence, where the annotations are elements of a monoid. Apart from operations to access the ends of the sequence, the main operation is to split the sequence at t...
متن کامل